Field of the Invention
The present invention relates to a wireless communication node, and more particularly to a wireless communication node having neighbor node information registered in a neighbor node lookup table in order to perform communications with a neighbor node on a multi-hop wireless network.
Description of the Background Art
A multi-hop wireless network is constituted with a plurality of wireless communication nodes, each of which has a packet transfer function to transfer and receive packets to and from its adjacent wireless communication nodes to thereby allow packets to be transmitted even to nodes residing beyond the area covered by the radio waves emitted by that node. A representative example of such a multi-hop wireless network is ZigBee (trade name) IP (Internet Protocol) technology as described in, for example, “Method B” of TTC standards “JJ-300, 10 ECHONET Lite-directed Home Network Communication Interface”, first ed., published on February 2013, and Katsuhiro Okaniwa, et al., “ZigBee IP Specifications in the 920 MHz band in Japan”, OKI Technical Review, No. 221, pp. 70-73, May 2013. The ZigBee IP technology is standardized by the ZigBee Alliance and will simply be referred to as “ZIP”. Note that the ZIP applied to the 920 MHz band is referred to as 920ZIP.
Reference will be made first to FIGS. 8A and 8B for understanding operations of routers, or wireless communication nodes, and a coordinator in ZIP taught by Katsuhiro Okaniwa, et al., for example. FIGS. 8A and 8B show a router ZR2 intended to join in a network, a router ZR1 located around the router ZR2 and a coordinator ZC having an authentication server function. The peripheral router ZR1 shown in the figures is a router to be listed in a neighbor node lookup table of the newly joining router ZR2 by a protocol described later, and be referred to as a neighbor node after listed.
At timing S1, the router ZR2, i.e. newly joining router, broadcasts a beacon request to peripheral nodes. When receiving the beacon request from the router ZR2, the peripheral router ZR1 sends a beacon as a reply to inform the presence of the peripheral router ZR1 itself to the router ZR2. At this time, the network ID (IDentification) in the ZIP is set forth in the beacon payload. That allows the newly joining router ZR2 to be aware which network it would participate in. If there are a plurality (n) of peripheral routers, the newly joining router ZR2 receives n beacons as reply.
Then, at timing S2, in order to start authentication by the participation of PANA (Protocol for carrying Authentication for Network Access) in the coordinator ZC, the newly joining router ZR2 sends PCI (PANA Client Initiation) to the peripheral router ZR1. Upon receiving the PCI from the peripheral router ZR1, the coordinator ZC performs authentication, and in turn sends authentication results including a network key to the newly joining router ZR2 via the peripheral node ZR1. The peripheral node ZR1 having received the PCI will operate as a PANA relay station for the newly joining router ZR2.
Then, at timing S3, when the participation authentication by using PANA has completed, the newly joining router ZR2 exchanges counter values with the peripheral router ZR1 in order to perform encrypted communications of MAC (Media Access Control) layer by means of the network key given at timing S2. For exchanging counter values, a Mesh Link Establishment (MLE) protocol is used which runs on the UDP (User Datagram Protocol) for transmitting and receiving node and link properties to and from nodes.
Then, at timing S4, in order that the newly joining router ZR2 determines its own IPv6 address, it sends and receives, to and from the peripheral router ZR1, a router request RS (Router Solicitation) requesting a prefix and a router reply RA (Router Advertisement) notifying a prefix, thereby getting the prefix of the IPv6 address from the peripheral router ZR1. The IPv6 address of the newly joining router ZR2 is generated from a short address (SA) of 16 bits, which is determined at random by that node itself. That may cause the same IPv6 address to be generated within the network. Thus, the newly joining router ZR2 sends out a Neighbor Solicitation (NS) to the peripheral router ZR1, which in turn produces a duplicate address request (DAR) to the coordinator ZC to allow the coordinator ZC to determine whether or not the same address has been used in the past. The coordinator ZC then sends a duplicate address confirmation (DAC) including the results of the determination to the peripheral node ZR1, from which a neighbor advertisement (NA) of the address confirmation is sent to the newly joining router ZR2. When receiving the neighbor advertisement, the newly joining router ZR2 recognizes whether or not the short address is duplicate. The address duplicate request (DAR) and address duplicate confirmation (DAC) are stipulated in the 6lowpan-nd, IPv6 over Low power Wireless Personal Area Networks-Neighbor Discovery.
At timing S5, the newly joining router ZR2 having its short address confirmed starts a search for a neighbor node and sends an MLE link request (MLR) by multicast addressing. When receiving this message, the neighbor node ZR1 sends back an MLE link accept and request (MLAR) if its own neighbor node lookup table includes an idle space for storage. Finally, the newly joining router ZR2 sends back an MLE link accept (MLA), thus completing the registration into the lookup table. Subsequently, the newly joining router ZR2 performs encrypted communications only with routers registered in the neighbor node lookup table.
Then, at timing S6, in order to build up a multi-hop route, the newly joining router ZR2 starts an operation of RPL (IPv6 Routing Protocol for Low-Power and Lossy Networks), i.e. a routing protocol of IPv6.
Specifically, in order to obtain peripheral route information, the newly joining router ZR2 multicasts a DODAG (Destination Oriented Directed Acyclic Graph) Information Solicitation (DIS) regarding a DODAG. When receiving a DODAG Information Solicitation, the neighbor node sends back a DODAG Information Object (DIO) to give RPL information such as identification information DODAG-ID on the tree topology and an RPL instance. The newly joining router ZR2 unicasts this information solicitation (DIS) to one of the neighbor nodes that is most suitable for a prioritized parent node, and obtains route information from an information object DIO sent in reply. Finally, the newly joining router ZR2 sends the parent information in the form of DAO (Destination Advertisement Object) messages to the coordinator ZC. In response, the coordinator ZC sends a receipt acknowledgment, DAO ACK. Thus, the coordinator ZC can know the parent-child relationships between the nodes, so that a downlink route can be established by source routing.
At timing S7, the quality of a link is measured. In the 920ZIP, as a metric for determining a route, the reciprocal of a packet receipt rate is used, for example. The packet receipt rate is measured between the neighbor nodes by periodic advertisement according to the mesh link establishment protocol MLE. MRHOF (The Minimum Rank with Hysteresis Objective Function) is also used for computing the value of a rank that is an index denoting the relative position with respect to the top node, or root node, of each node or router, the top node having the coordinator located. By hysteretic characteristics, contrivances are made to prevent the route from being changed too frequently if the packet receipt rate varies.
As described above, in the ZIP method of prior art, in order that a local node performs encrypted communications with neighbor nodes or routers, that node has to register a certain neighbor node in its lookup table. For that aim, at the above-stated timing S5 for searching for a neighbor router, UDP packets according to the mesh link establishment (MLE) protocol are exchanged with neighbor nodes to thereby formulate the neighbor node lookup table.
At this time, the newly joining node multicasts, or broadcasts, an MLE link request (MLR) to peripheral nodes as described above. However, if the neighbor nodes send back their replies at once, the packets would collide with each other so that the replies to the MLE link request (MLR) may not appropriately be received by the newly joining node. Therefore, when the neighbor nodes receive an MLE link request (MLR), they send back to the newly joining node an MLE link accept and request (MLAR) after a random period of time elapses since they have received the MLE link request (MLR), whereby a conflict of packets can be minimized. When receiving an MLE link accept and request (MLAR), the newly joining node then needs to send back an MLE link accept (MLA) to the any neighbor nodes. However, in the Mesh Link Establishment (MLE) protocol, it is not stipulated that the newly joining node should send back an MLE link accept (MLA) to which of its neighbor nodes.
Generally, it would be considered that the newly joining node should send back an MLE link accept and request (MLAR) on a first-in first-out basis in the order of receiving MLE link accept and requests (MLARs). However, as described above, the timing of sending back MLE link accept and requests (MLARs) involves random factors, see FIG. 3 described later, and hence the conventional wireless communication nodes do not assure that a suitable node for a neighbor node can necessarily be selected, which satisfies requirements such as a small rank value in reaching the coordinator and a large Received Signal Strength Intensity (RSSI).
Furthermore, in the conventional method for creating a neighbor node lookup table, if the maximum number of register nodes registerable in a neighbor node lookup table is set fewer than neighbor nodes, it is impossible to register all the neighbor nodes in the neighbor node lookup table. Therefore, even when the user intentionally installs a new relay node, the newly installed relay node may not always be registered in the neighbor node lookup table of the intended node.
Accordingly, there is a demand for wireless communication nodes capable of solving the foregoing problems with registration of neighbor nodes.